package com.currency.mall.netWork.api;

import com.currency.mall.Constant;
import com.currency.mall.entity.BankCardBean;
import com.currency.mall.entity.CapitalFlowBean;
import com.currency.mall.entity.RechargeBean;
import com.currency.mall.entity.SharesRoyaltyBean;
import com.currency.mall.entity.UserAccount;
import com.currency.mall.entity.UserAccoutBean;
import com.currency.mall.entity.UserInfo;
import com.mifengs.commonbusines.entity.ResponseBean;

import java.util.Map;

import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.QueryMap;
import rx.Observable;

/**
 * Created by Administrator on 2018/12/26.
 */

public interface UserApi {

    @GET(Constant.USER_ACCOUNT)
    Observable<UserAccount> userAccount(
    );


    @FormUrlEncoded
    @POST(Constant.AUTHENTICATIONIDENTITY)
    Observable<ResponseBean> identityAuthentication(
            @FieldMap Map<String, String> map
    );

    @GET(Constant.USER_INFO)
    Observable<UserInfo> userInfo(
    );

    @GET(Constant.BANDCARD_LIST)
    Observable<BankCardBean> getBankCardData(
    );

    @FormUrlEncoded
    @POST(Constant.ADD_BANDCARD)
    Observable<ResponseBean> addBankCard(
            @FieldMap Map<String, Object> map
    );

    @GET(Constant.BANDLIST)
    Observable<BankCardBean> bankList(
    );

    @GET(Constant.CAPITAL_LIST)
    Observable<CapitalFlowBean> capitalList(
            @QueryMap Map<String, Object> map
    );

    @GET(Constant.ACCOUNT_PRICE)
    Observable<UserAccoutBean> accountQuery(
    );

    @FormUrlEncoded
    @POST(Constant.SUBMIT_WITHDRAWAL)
    Observable<ResponseBean> submitWithdrawal(
            @FieldMap Map<String, Object> map
    );

    @FormUrlEncoded
    @POST(Constant.RECHARGECREATE)
    Observable<RechargeBean> rechargeCreate(
            @FieldMap Map<String, Object> map
    );

    @FormUrlEncoded
    @POST(Constant.RECHARGE_STATE)
    Observable<ResponseBean> rechargeState(
            @FieldMap Map<String, Object> map
    );


}
